package com.raitcon.hibernate.bean;
// Generated 27/05/2014 07:54:56 AM by Hibernate Tools 3.2.1.GA


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Padre generated by hbm2java
 */
@Entity
@Table(name="padre"
    ,schema="public"
)
public class Padre  implements java.io.Serializable {


     private long idPadre;
     private String dni;
     private String nombres;
     private String apellidoPaterno;
     private String apellidoMaterno;
     private String direccion;
     private Date fechaNacimiento;
     private Character sexo;
     private char tipoPadre;
     private Set<PadreAlumno> padreAlumnos = new HashSet<PadreAlumno>(0);

    public Padre() {
    }

	
    public Padre(long idPadre, String dni, String nombres, String apellidoPaterno, String apellidoMaterno, char tipoPadre) {
        this.idPadre = idPadre;
        this.dni = dni;
        this.nombres = nombres;
        this.apellidoPaterno = apellidoPaterno;
        this.apellidoMaterno = apellidoMaterno;
        this.tipoPadre = tipoPadre;
    }
    public Padre(long idPadre, String dni, String nombres, String apellidoPaterno, String apellidoMaterno, String direccion, Date fechaNacimiento, Character sexo, char tipoPadre, Set<PadreAlumno> padreAlumnos) {
       this.idPadre = idPadre;
       this.dni = dni;
       this.nombres = nombres;
       this.apellidoPaterno = apellidoPaterno;
       this.apellidoMaterno = apellidoMaterno;
       this.direccion = direccion;
       this.fechaNacimiento = fechaNacimiento;
       this.sexo = sexo;
       this.tipoPadre = tipoPadre;
       this.padreAlumnos = padreAlumnos;
    }
   
     @Id 
    
    @Column(name="id_padre", unique=true, nullable=false)
    public long getIdPadre() {
        return this.idPadre;
    }
    
    public void setIdPadre(long idPadre) {
        this.idPadre = idPadre;
    }
    
    @Column(name="DNI", nullable=false)
    public String getDni() {
        return this.dni;
    }
    
    public void setDni(String dni) {
        this.dni = dni;
    }
    
    @Column(name="nombres", nullable=false)
    public String getNombres() {
        return this.nombres;
    }
    
    public void setNombres(String nombres) {
        this.nombres = nombres;
    }
    
    @Column(name="apellido_paterno", nullable=false)
    public String getApellidoPaterno() {
        return this.apellidoPaterno;
    }
    
    public void setApellidoPaterno(String apellidoPaterno) {
        this.apellidoPaterno = apellidoPaterno;
    }
    
    @Column(name="apellido_materno", nullable=false)
    public String getApellidoMaterno() {
        return this.apellidoMaterno;
    }
    
    public void setApellidoMaterno(String apellidoMaterno) {
        this.apellidoMaterno = apellidoMaterno;
    }
    
    @Column(name="direccion")
    public String getDireccion() {
        return this.direccion;
    }
    
    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="fecha_nacimiento", length=29)
    public Date getFechaNacimiento() {
        return this.fechaNacimiento;
    }
    
    public void setFechaNacimiento(Date fechaNacimiento) {
        this.fechaNacimiento = fechaNacimiento;
    }
    
    @Column(name="sexo", length=1)
    public Character getSexo() {
        return this.sexo;
    }
    
    public void setSexo(Character sexo) {
        this.sexo = sexo;
    }
    
    @Column(name="tipo_padre", nullable=false, length=1)
    public char getTipoPadre() {
        return this.tipoPadre;
    }
    
    public void setTipoPadre(char tipoPadre) {
        this.tipoPadre = tipoPadre;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="padre")
    public Set<PadreAlumno> getPadreAlumnos() {
        return this.padreAlumnos;
    }
    
    public void setPadreAlumnos(Set<PadreAlumno> padreAlumnos) {
        this.padreAlumnos = padreAlumnos;
    }




}


